A general purpose device such as a processor based system, for example, a personal or handheld computer, or a dedicated device such as an automated teller machine, may communicate with an entity, such as a server for a service provider, in a secure manner. The device, when interacting in such a manner, may be termed a secure device. In one example, a personal computer user may desire to use the computer, including software such as a browser executing on an operating system, as a secure device to access a stock account on the web.
The interacting entity may require that the device possess specific security related attributes before the entity communicates with the device. In the above example, prior to providing access, the stockbroker's web server may seek reliable information regarding security related characteristics of the user's computer and software executing on the computer. In general, this problem is solved by a certificate such as a digital certificate signed by the manufacturer of the secure device that makes a representation about the attributes of the secure device. In the example under consideration, this may be a signed digital certificate provided by the browser and signed by the manufacturer of the browser, or one provided by the operating system and signed by the manufacturer of the operating system, or provided directly by the computer hardware and signed by the hardware manufacturer, or some other type of certificate that assures the interacting entity, in this case the stockbroker's web server, that the device has certain characteristics or meets certain standards. Such a certificate could represent, for example, the level of encryption supported by the browser, or the existence and type of secure interconnection between the computer and any external peripherals. Such a certificate could also represent a hardware device in the platform that holds a cryptographic key and was manufactured to protect the key using specified protections.
In general, therefore, a manufacturing entity that is either the manufacturer itself or authorized by the manufacturer, may have signed several certificates that provide information about the capabilities of several secure devices provided by the manufacturer.
Occasionally, the signing key of the manufacturer may be compromised, for example, it may become known to an unauthorized party. This consequently prevents any device that subsequently authenticates itself to another entity using the manufacturer's signed certificate from guaranteeing its security related characteristics because the unauthorized party may have signed the certificate and the device certificate may thereby make a false representation about its security characteristics. Thus, bona fide devices that have been provided using the manufacturing entity's certificate prior to the signing key compromise must be issued a new certificate signed by a new uncompromised key that provides the same level of trust in the certificate as before the compromise.
The mechanism by which this may be achieved requires the manufacturing entity to maintain a list of the secure devices to which it has provided a signed certificate, and a secure time stamp recording a time earlier than the time at which the certificate was signed, for each secure device so authenticated. The combination of the signed certificate and the time stamp provides a guaranteed record of the secure device's state at that time of the signing with respect to the attributes represented by the certificate. Once a compromise occurs, a replacement authority, which may be the manufacturing entity itself or a physically separate entity, can then use the record to assign new certificates to the secure devices that are known to have been certified by the manufacturing entity prior to the compromise.
The replacement authority, on being notified, of the compromise generates a replacement signing key. Using the replacement key, the replacement authority then generates a new certificate for every secure device known to have a bona fide certificate previously provided by the manufacturing entity and not created as a result of the compromise. These certificates are then distributed to the bona fide secure devices; in one instance by having the secure devices download them from a distribution server.
The above replacement scenario is complicated when the process of signing certificates for secured devices is blinded. In a blinded signing, a secure device may obtain certificates from a manufacturing entity while keeping its identity hidden from the manufacturing entity. A secure device may in one class of implementations provide a manufacturing entity with information placing it in a known class of trusted devices without revealing its identity. This may be achieved by a protocol such as that described in, for example, Chaum, D. Security without identification: transaction systems to make big brother obsolete. Comm. of the ACM. 28(10):1030-1044; 1985 (Chaum). However, in such a blinded signing scenario, because the identity of the secure device is essentially unknowable to the manufacturing entity, it is not possible for the entity to provide information about the secure devices that have bona fide certificates to a replacement authority in the straightforward manner described earlier if a compromise of the manufacturing entity's signing key occurs.